﻿/**
 * jQuery ligerUI 1.1.9
 * http://ligerui.com
 * Author franky 2012 [ 2830243@qq.com ]
 */
(function($) {
	$.fn.ligerToolbarButton = function(options) {
		return $.ligerui.run.call(this, "ligerToolbarButton", arguments);
	};
	$.fn.ligerGetToolbarButtonManager = function() {
		return $.ligerui.run.call(this, "ligerGetToolbarButtonManager", arguments);
	};

	$.ligerDefaults.ToolbarButton = {
		disabled : false
	};

	$.ligerMethos.ToolbarButton = {};

	$.ligerui.controls.ToolbarButton = function(element, options) {
		$.ligerui.controls.ToolbarButton.base.constructor.call(this, element, options);
	};
	$.ligerui.controls.ToolbarButton.ligerExtend($.ligerui.controls.Input, {
		__getType : function() {
			return 'ToolbarButton';
		},
		__idPrev : function() {
			return 'ToolbarButton';
		},
		_extendMethods : function() {
			return $.ligerMethos.ToolbarButton;
		},
		_render : function() {
			var g = this, p = this.options;
			g.wrapper = $(g.element);
			g.button = $('<div class="l-toolbar-item l-panel-btn"><span unselectable="on" style="-moz-user-select:none">'
					+ p.text + '</span><div class="l-panel-btn-l"></div><div class="l-panel-btn-r"></div></div>');
			g.wrapper.append(g.button);
			p.id && g.button.attr("id", p.id);
			p.disabled && g.button.addClass("l-toolbar-item-disabled");
			if (p.img) {
				g.button.append("<img src='" + p.img + "' />");
				g.button.addClass("l-toolbar-item-hasicon");
			} else if (p.icon) {
				g.button.append("<div class='l-icon l-icon-" + p.icon + "'></div>");
				g.button.addClass("l-toolbar-item-hasicon");
			}
			p.click&&g.button.click(function(){
        if(!p.disabled)
        p.click.apply(g,arguments);
      });
			g.button.hover(function() {
				$(this).addClass("l-panel-btn-over");
			}, function() {
				$(this).removeClass("l-panel-btn-over");
			});
			g.set(p);
		},
		_setEnabled : function(value) {
			if (value)
				this.button.removeClass("l-toolbar-item-disabled");
		},
		_setDisabled : function(value) {
			if (value) {
				this.button.addClass("l-toolbar-item-disabled");
				this.options.disabled = true;
			}
		},
		_setWidth : function(value) {
			this.button.width(value);
		},
		_setText : function(value) {
			$("span", this.button).html(value);
		},
		setValue : function(value) {
			this.set('text', value);
		},
		getValue : function() {
			return this.options.text;
		},
		setEnabled : function() {
			this.set('disabled', false);
		},
		setDisabled : function() {
			this.set('disabled', true);
		}
	});
})(jQuery);